考虑一个语言 L 包含 n 个词,L={w1,⋯,wn}。一个 2-gram 语言模型可以看成是以词为下标的矩阵,每个元素 Pij 表示在语言中连续出现 wi 和 wj 的概率:
Pij=P(wi→wj)
注意,这是一个概率矩阵而不是转移矩阵,满足 ∑ijPij=1,而不是 ∑jPij=1.
现在我们考虑在这样的语言模型下计算连续当量。记 wi 的编码为 ci,并且这个编码的第一码和最后一码分别为 si 和 ti,满足 si,ti∈Σ 是某个字母表。记当量的函数 f:Σ×Σ→R 是将两个字母映射为一个实数的函数。
连续当量的定义为:
Econt=ij∑Pijf(ti,sj)
也就是说,对每个可能的词间连接来统计加权平均的当量。这个定义的问题在于,P 是一个非常大的矩阵,即使使用稀疏矩阵的方式加以压缩,也至少有数十万甚至数百万元素。考虑到一般来说词的数量只有几万,在方案评测和计算中考虑连续当量的性价比是不高的。下面我们来研究如何降低这里的计算量。
注意到,如果认为 Pij≈pipj